package com.hsnn.medstgmini.base.std.dao;

import java.util.List;
import java.util.Map;

import com.hsnn.medstgmini.base.std.model.StdCompprofile;
import com.hsnn.medstgmini.sys.model.SysUser;
import com.hsnn.medstgmini.util.Pagination;

/**
 * @category 企业端基础库资质管理
 * @author 蔡春龙
 * @date 2015年9月9日
 */
public interface CompProfileDao {

	/**
	 * @category 查看企业资质列表
	 * @date 2015年9月9日
	 * @param page
	 * @param compProfile
	 * @return
	 */
	Pagination getSelfCompProfileList(Pagination page,
			StdCompprofile compProfile);
	
	/**
	 * @category 查询企业资质类型列表(id, name)
	 * @date 2015年9月9日
	 * @return
	 */
	List<Map<String, String>> getCompProfileTypeList();
	
	/**
	 * @category 提交企业资质
	 * @date 2015年9月9日
	 * @param compProfile
	 */
	void submitCompProfile(StdCompprofile compProfile);
	
	/**
	 * @category 查询有资质需要审核的企业列表
	 * @date 2015年9月9日
	 * @param page
	 * @return
	 */
	Pagination getSomeCompinfoViewList(Pagination page);
	
	/**
	 * @category 审核企业资质
	 * @date 2015年9月9日
	 * @param compProfile
	 * @param user
	 */
	void auditCompProfile(StdCompprofile compProfile, SysUser user);
	
	/**
	 * @category 变更企业资质状态
	 * @date 2015年9月10日
	 * @param compProfile
	 * @param user
	 */
	void changeCompProfileStatus(StdCompprofile compProfile, SysUser user);
	
	/**
	 * @category 查询维护记录详情
	 * @date 2015年9月28日
	 * @param logId
	 * @return
	 */
	List<Map<String, Object>> getCompProfileLogDetail(String logId);

}
